[INFO] cloning repository https://github.com/kavonrtep/kitehor
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kavonrtep/kitehor" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkavonrtep%2Fkitehor", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkavonrtep%2Fkitehor'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 268280df9750c3a4de37a3f49a143a7f546dd2ed
[INFO] testing kavonrtep/kitehor/268280df9750c3a4de37a3f49a143a7f546dd2ed against master#cced03bfd61a304243a34504618ecec86c17063f for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkavonrtep%2Fkitehor" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-0-tc1/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/kavonrtep/kitehor
[INFO] finished tweaking git repo https://github.com/kavonrtep/kitehor
[INFO] tweaked toml for git repo https://github.com/kavonrtep/kitehor written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kavonrtep/kitehor on toolchain cced03bfd61a304243a34504618ecec86c17063f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kavonrtep/kitehor already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.121
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.121
[INFO] [stderr]   Downloaded borrow-or-share v0.2.4
[INFO] [stderr]   Downloaded uuid-simd v0.8.0
[INFO] [stderr]   Downloaded num-cmp v0.1.0
[INFO] [stderr]   Downloaded bytecount v0.6.9
[INFO] [stderr]   Downloaded email_address v0.2.9
[INFO] [stderr]   Downloaded buffer-redux v1.1.0
[INFO] [stderr]   Downloaded cc v1.2.62
[INFO] [stderr]   Downloaded liblzma v0.3.6
[INFO] [stderr]   Downloaded referencing v0.30.0
[INFO] [stderr]   Downloaded libbz2-rs-sys v0.2.4
[INFO] [stderr]   Downloaded fluent-uri v0.3.2
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.121
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.121
[INFO] [stderr]   Downloaded fraction v0.15.4
[INFO] [stderr]   Downloaded js-sys v0.3.98
[INFO] [stderr]   Downloaded jsonschema v0.30.0
[INFO] [stderr]   Downloaded proptest v1.11.0
[INFO] [stderr]   Downloaded needletail v0.7.3
[INFO] [stderr]   Downloaded liblzma-sys v0.3.13
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 79bcf6b21a6beb23f664b53327800740224a3d45583f551f802b9c93dfc22b23
[INFO] running `Command { std: "docker" "start" "-a" "79bcf6b21a6beb23f664b53327800740224a3d45583f551f802b9c93dfc22b23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "79bcf6b21a6beb23f664b53327800740224a3d45583f551f802b9c93dfc22b23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "79bcf6b21a6beb23f664b53327800740224a3d45583f551f802b9c93dfc22b23", kill_on_drop: false }`
[INFO] [stdout] 79bcf6b21a6beb23f664b53327800740224a3d45583f551f802b9c93dfc22b23
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6bf047d9ba0ee7087893669f3dbbdfb128c5641ea32e5693c9ca8c916d3c0023
[INFO] running `Command { std: "docker" "start" "-a" "6bf047d9ba0ee7087893669f3dbbdfb128c5641ea32e5693c9ca8c916d3c0023", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling cc v1.2.62
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling liblzma-sys v0.3.13
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling borrow-or-share v0.2.4
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling vsimd v0.8.0
[INFO] [stderr]    Compiling pxfm v0.1.29
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.2
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling outref v0.5.2
[INFO] [stderr]    Compiling libbz2-rs-sys v0.2.4
[INFO] [stderr]    Compiling strength_reduce v0.2.4
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling bytecount v0.6.9
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling moxcms v0.8.1
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling fraction v0.15.4
[INFO] [stderr]    Compiling liblzma v0.3.6
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling env_filter v1.0.1
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling bzip2 v0.6.1
[INFO] [stderr]    Compiling transpose v0.2.3
[INFO] [stderr]    Compiling uuid-simd v0.8.0
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling fancy-regex v0.14.0
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling fluent-uri v0.3.2
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling email_address v0.2.9
[INFO] [stderr]    Compiling referencing v0.30.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling primal-check v0.3.4
[INFO] [stderr]    Compiling buffer-redux v1.1.0
[INFO] [stderr]    Compiling csv-core v0.1.13
[INFO] [stderr]    Compiling jiff v0.2.24
[INFO] [stderr]    Compiling num-cmp v0.1.0
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling jsonschema v0.30.0
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling image v0.25.10
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling env_logger v0.11.10
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling csv v1.4.0
[INFO] [stderr]    Compiling rustfft v6.4.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling rand_distr v0.5.1
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling needletail v0.7.3
[INFO] [stderr]    Compiling kitehor v0.13.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 10s
[INFO] running `Command { std: "docker" "inspect" "6bf047d9ba0ee7087893669f3dbbdfb128c5641ea32e5693c9ca8c916d3c0023", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6bf047d9ba0ee7087893669f3dbbdfb128c5641ea32e5693c9ca8c916d3c0023", kill_on_drop: false }`
[INFO] [stdout] 6bf047d9ba0ee7087893669f3dbbdfb128c5641ea32e5693c9ca8c916d3c0023
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c6f69263c5310a441a8e00e16442c8f5123f7a37715185895d882142bef63602
[INFO] running `Command { std: "docker" "start" "-a" "c6f69263c5310a441a8e00e16442c8f5123f7a37715185895d882142bef63602", kill_on_drop: false }`
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling fancy-regex v0.14.0
[INFO] [stderr]    Compiling jsonschema v0.30.0
[INFO] [stderr]    Compiling image v0.25.10
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling proptest v1.11.0
[INFO] [stderr]    Compiling kitehor v0.13.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 52s
[INFO] running `Command { std: "docker" "inspect" "c6f69263c5310a441a8e00e16442c8f5123f7a37715185895d882142bef63602", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c6f69263c5310a441a8e00e16442c8f5123f7a37715185895d882142bef63602", kill_on_drop: false }`
[INFO] [stdout] c6f69263c5310a441a8e00e16442c8f5123f7a37715185895d882142bef63602
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b3b611d4792dc98beacdb75f65c5370c1349e634a5f38f0058da39d494874ace
[INFO] running `Command { std: "docker" "start" "-a" "b3b611d4792dc98beacdb75f65c5370c1349e634a5f38f0058da39d494874ace", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kitehor-7d846f4c97021af6)
[INFO] [stdout] 
[INFO] [stdout] running 442 tests
[INFO] [stdout] test detect::analysis_blocks::tests::best_alignment_identity_is_higher_than_zero_shift_for_shifted_block ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::best_alignment_identity_stays_low_for_different_strings ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::build_blocks_respects_max_segments_per_array_on_huge ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::build_blocks_folds_in_extra_splits ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::build_blocks_hor_unit_alignment_drops_partial_units_at_end ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::hamming_identity_n_skip_returns_none_for_length_mismatch ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::hamming_identity_n_skip_drops_n_positions ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::hamming_identity_n_skip_returns_none_for_all_n ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::pairwise_identity_skips_low_coverage ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::pairwise_identity_admits_high_coverage_pairs ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::pick_medoid_none_when_no_pairs ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::build_blocks_merges_undersized_block_into_neighbour ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::build_blocks_single_for_short_array ... ok
[INFO] [stdout] test detect::autocorr::tests::empty_input_yields_none ... ok
[INFO] [stdout] test detect::autocorr::tests::k_max_clamped_to_n_minus_1 ... ok
[INFO] [stdout] test cli::tests::cli_help_renders ... ok
[INFO] [stdout] test detect::confidence::tests::ambiguous_scores_low ... ok
[INFO] [stdout] test cli::tests::classify_parses ... ok
[INFO] [stdout] test detect::confidence::tests::clean_hor_scores_high ... ok
[INFO] [stdout] test detect::confidence::tests::clean_simple_tr_scores_high ... ok
[INFO] [stdout] test detect::autocorr::tests::r_lag1_equals_one_for_identical_rows ... ok
[INFO] [stdout] test detect::confidence::tests::mixed_with_more_copies_scores_higher ... ok
[INFO] [stdout] test detect::config::tests::default_passes_validation ... ok
[INFO] [stdout] test detect::config::tests::rejects_bad_embedding_k ... ok
[INFO] [stdout] test detect::config::tests::rejects_bad_widths ... ok
[INFO] [stdout] test detect::config::tests::rejects_inverted_stratification_thresholds ... ok
[INFO] [stdout] test detect::consensus::tests::consensus_emits_n_for_all_n_column ... ok
[INFO] [stdout] test detect::consensus::tests::consensus_on_slice_clamps_end_row ... ok
[INFO] [stdout] test detect::consensus::tests::consensus_on_slice_matches_whole_array_consensus_when_full ... ok
[INFO] [stdout] test detect::consensus::tests::consensus_on_slice_restricts_to_block_rows ... ok
[INFO] [stdout] test detect::consensus::tests::consensus_on_slice_returns_none_for_empty_range ... ok
[INFO] [stdout] test detect::consensus::tests::consensus_on_slice_returns_none_for_single_row ... ok
[INFO] [stdout] test detect::consensus::tests::consensus_picks_plurality_base ... ok
[INFO] [stdout] test detect::consensus::tests::consensus_returns_none_for_one_row ... ok
[INFO] [stdout] test detect::consensus::tests::consensus_ties_break_alphabetically ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::pick_medoid_returns_central_block ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::pick_medoid_ties_break_by_smallest_index ... ok
[INFO] [stdout] test detect::config::tests::loads_from_partial_toml ... ok
[INFO] [stdout] test detect::consensus::tests::write_fasta_mixed_segments ... ok
[INFO] [stdout] test detect::consensus::tests::write_fasta_multi_record ... ok
[INFO] [stdout] test detect::edges::tests::checkerboard_high_edges ... ok
[INFO] [stdout] test detect::confidence::tests::high_wobble_penalises_score ... ok
[INFO] [stdout] test detect::edges::tests::flat_sequence_has_no_edges ... ok
[INFO] [stdout] test detect::consensus::tests::write_fasta_round_trips ... ok
[INFO] [stdout] test detect::edges::tests::column_autocorr_finds_period ... ok
[INFO] [stdout] test detect::edges::tests::returns_none_for_single_row ... ok
[INFO] [stdout] test detect::embed::tests::all_a_row_concentrates_at_aaaa_bin ... ok
[INFO] [stdout] test detect::embed::tests::distinct_rows_have_lower_similarity ... ok
[INFO] [stdout] test detect::embed::tests::embed_rows_drops_trailing_partial ... ok
[INFO] [stdout] test detect::embed::tests::embed_dim_is_4_to_the_k ... ok
[INFO] [stdout] test detect::embed::tests::empty_or_all_n_row_returns_zero_vec ... ok
[INFO] [stdout] test detect::embed::tests::identical_rows_dot_to_one ... ok
[INFO] [stdout] test detect::embed::tests::n_resets_the_kmer_window ... ok
[INFO] [stdout] test detect::analysis_blocks::tests::hamming_identity_n_skip_basic ... ok
[INFO] [stdout] test detect::io::tests::empty_properties_round_trip_header_then_zero_rows ... ok
[INFO] [stdout] test detect::io::tests::join_allows_extra_periods_with_flag ... ok
[INFO] [stdout] test detect::io::tests::join_rejects_extra_periods_by_default ... ok
[INFO] [stdout] test detect::io::tests::periods_loader_dedups_keeping_max_score ... ok
[INFO] [stdout] test detect::io::tests::periods_loader_rejects_nonfinite_score ... ok
[INFO] [stdout] test detect::io::tests::periods_loader_rejects_negative_score ... ok
[INFO] [stdout] test detect::io::tests::periods_loader_rejects_missing_required_column ... ok
[INFO] [stdout] test detect::io::tests::periods_loader_rejects_empty_score ... ok
[INFO] [stdout] test detect::io::tests::periods_loader_rejects_out_of_range_score ... ok
[INFO] [stdout] test detect::io::tests::placeholder_writes_all_na ... ok
[INFO] [stdout] test detect::io::tests::segments_writer_emits_header_only_when_empty ... ok
[INFO] [stdout] test detect::io::tests::segments_writer_one_row ... ok
[INFO] [stdout] test detect::irregularity::tests::returns_none_when_too_few_rows ... ok
[INFO] [stdout] test detect::io::tests::width_features_writer_emits_one_row_per_width ... ok
[INFO] [stdout] test detect::phase::tests::phase_separation_high_for_clean_hor ... ok
[INFO] [stdout] test detect::phase::tests::phase_separation_low_for_uniform_curve ... ok
[INFO] [stdout] test detect::phase::tests::primitive_corrects_12_down_to_6 ... ok
[INFO] [stdout] test detect::phase::tests::primitive_corrects_to_smallest_qualifying_divisor ... ok
[INFO] [stdout] test detect::phase::tests::primitive_keeps_12_when_no_divisor_close ... ok
[INFO] [stdout] test detect::segment::tests::mixed_context_ignored_when_class_not_mixed ... ok
[INFO] [stdout] test detect::segment::tests::mixed_emits_one_segment_per_block_with_identity ... ok
[INFO] [stdout] test detect::segment::tests::one_shift_yields_two_segments ... ok
[INFO] [stdout] test detect::io::tests::periods_loader_groups_by_array_id ... ok
[INFO] [stdout] test detect::segment::tests::two_shifts_yields_three_segments ... ok
[INFO] [stdout] test detect::shift::tests::breakpoint_skipped_when_change_below_threshold ... ok
[INFO] [stdout] test detect::shift::tests::breakpoint_threshold_triggers_on_large_step ... ok
[INFO] [stdout] test detect::io::tests::periods_loader_rejects_malformed_score ... ok
[INFO] [stdout] test detect::shift::tests::identical_rows_give_zero_shift_and_zero_wobble ... ok
[INFO] [stdout] test detect::segment::tests::no_shifts_yields_no_segments ... ok
[INFO] [stdout] test detect::shift::tests::recover_offset_identifies_known_shift ... ok
[INFO] [stdout] test detect::shift::tests::synthetic_step_recovers_one_breakpoint ... ok
[INFO] [stdout] test detect::viz::tests::export_edges_writes_edge_matrix ... ok
[INFO] [stdout] test detect::viz::tests::export_off_when_no_flags ... ok
[INFO] [stdout] test detect::shift::tests::recover_offset_zero_for_identical_windows ... ok
[INFO] [stdout] test detect::viz::tests::granular_export_only_writes_flagged_artifacts ... ok
[INFO] [stdout] test detect::viz::tests::png_writes_a_valid_image ... ok
[INFO] [stdout] test detect::viz::tests::tsv_is_written_under_array_id_subdir ... ok
[INFO] [stdout] test detect::widths::tests::cap_keeps_all_of_tier12_even_if_over_cap ... ok
[INFO] [stdout] test detect::confidence::tests::mixed_outscores_signal_free_ambiguous ... ok
[INFO] [stdout] test detect::segment::tests::out_of_order_shifts_get_sorted_and_deduped ... ok
[INFO] [stdout] test detect::shift::tests::match_at_shift_identifies_exact_offset ... ok
[INFO] [stdout] test detect::viz::tests::raster_tsv_encodes_bases_to_integers ... ok
[INFO] [stdout] test detect::widths::tests::divisors_below_min_width_kept_when_min_width_lower ... ok
[INFO] [stdout] test detect::irregularity::tests::uniform_blocks_yield_low_irregularity ... ok
[INFO] [stdout] test detect::widths::tests::divisors_of_top_period_included ... ok
[INFO] [stdout] test detect::widths::tests::empty_input_empty_output ... ok
[INFO] [stdout] test detect::widths::tests::period_above_array_len_dropped ... ok
[INFO] [stdout] test detect::widths::tests::harmonics_added ... ok
[INFO] [stdout] test detect::wrap::tests::all_a_column_against_uniform_bg_is_2_bits ... ok
[INFO] [stdout] test detect::wrap::tests::background_fallback_for_zero_base ... ok
[INFO] [stdout] test detect::widths::tests::tier1_always_present ... ok
[INFO] [stdout] test detect::wrap::tests::background_for_uniform_sequence ... ok
[INFO] [stdout] test detect::widths::tests::out_of_range_filtered ... ok
[INFO] [stdout] test detect::wrap::tests::background_handles_all_n ... ok
[INFO] [stdout] test detect::wrap::tests::n_excluded_from_denominator ... ok
[INFO] [stdout] test detect::wrap::tests::hor_matrix_yields_conserved_columns ... ok
[INFO] [stdout] test detect::wrap::tests::wrap_drops_trailing_partial_row ... ok
[INFO] [stdout] test detect::wrap::tests::wrap_returns_none_when_not_enough_rows ... ok
[INFO] [stdout] test emit_periods::tests::founder_equals_tile_dedup ... ok
[INFO] [stdout] test emit_periods::tests::hor_emits_founder_tile_and_secondaries ... ok
[INFO] [stdout] test emit_periods::tests::no_signal_emits_nothing ... ok
[INFO] [stdout] test emit_periods::tests::secondaries_capped_at_top_3 ... ok
[INFO] [stdout] test emit_periods::tests::secondaries_never_look_past_top_3 ... ok
[INFO] [stdout] test emit_periods::tests::secondaries_skip_founder_and_tile_in_top_3 ... ok
[INFO] [stdout] test emit_periods::tests::tandem_emits_single_high_score ... ok
[INFO] [stdout] test emit_periods::tests::unresolved_emits_below_floor_hints ... ok
[INFO] [stdout] test emit_periods::tests::write_tsv_uses_v2_schema ... ok
[INFO] [stdout] test detect::wrap::tests::random_sequence_low_ic ... ok
[INFO] [stdout] test detect::widths::tests::divisors_helper_basics ... ok
[INFO] [stdout] test detect::widths::tests::neighborhoods_added_around_tier12 ... ok
[INFO] [stdout] test emit_periods::tests::no_classifier_emits_secondaries_only ... ok
[INFO] [stdout] test io::tests::flags_short_record ... ok
[INFO] [stdout] test irregularity::io::tests::fmt_opt_f64_drops_trailing_zeros ... ok
[INFO] [stdout] test irregularity::scan::tests::adaptive_baseline_floor ... ok
[INFO] [stdout] test irregularity::scan::tests::adaptive_baseline_picks_up_spread ... ok
[INFO] [stdout] test irregularity::scan::tests::cluster_by_phase_same_bin_for_close_phases ... ok
[INFO] [stdout] test irregularity::scan::tests::cluster_by_phase_short_period ... ok
[INFO] [stdout] test irregularity::scan::tests::compatible_with_p_basics ... ok
[INFO] [stdout] test irregularity::scan::tests::detect_events_finds_single_spike ... ok
[INFO] [stdout] test io::tests::loads_single_record ... ok
[INFO] [stdout] test irregularity::scan::tests::detect_events_rejects_below_floor ... ok
[INFO] [stdout] test io::tests::flags_too_many_ns ... ok
[INFO] [stdout] test io::tests::id_stripped_to_first_whitespace_token ... ok
[INFO] [stdout] test irregularity::scan::tests::detect_events_rejects_insufficient_support ... ok
[INFO] [stdout] test irregularity::scan::tests::modal_distance_with_skip ... ok
[INFO] [stdout] test irregularity::scan::tests::modal_distance_basic ... ok
[INFO] [stdout] test irregularity::scan::tests::per_pair_residual_picks_up_indel ... ok
[INFO] [stdout] test irregularity::scan::tests::per_pair_residual_self_corrects_dropout ... ok
[INFO] [stdout] test io::tests::handles_multiple_records ... ok
[INFO] [stdout] test io::tests::normalizes_lowercase_and_n ... ok
[INFO] [stdout] test irregularity::scan::tests::no_period_flag ... ok
[INFO] [stdout] test irregularity::scan::tests::too_short_flag ... ok
[INFO] [stdout] test kite::tests::score_formula_matches_kite_r ... ok
[INFO] [stdout] test periodogram::tests::empty_profile_record_skipped ... ok
[INFO] [stdout] test monomer_model::tests::probe_period_returns_none_when_array_too_short ... ok
[INFO] [stdout] test report::io::tests::fmt_opt_f64_handles_none ... ok
[INFO] [stdout] test report::io::tests::ssr_str_maps_na_to_empty ... ok
[INFO] [stdout] test report::tests::empty_peaks_yields_empty_strings ... ok
[INFO] [stdout] test report::tests::encode_clusters_format ... ok
[INFO] [stdout] test periodogram::tests::header_records_kmer_size ... ok
[INFO] [stdout] test report::tests::trim_zeros_basics ... ok
[INFO] [stdout] test rescore::aligner::tests::a_longer_than_b ... ok
[INFO] [stdout] test detect::autocorr::tests::clean_hor_k4_peaks_at_lag_4 ... ok
[INFO] [stdout] test periodogram::tests::round_trip_two_records ... ok
[INFO] [stdout] test rescore::aligner::tests::band_zero_caps_at_indel_count ... ok
[INFO] [stdout] test rescore::aligner::tests::empty_a ... ok
[INFO] [stdout] test rescore::aligner::tests::empty_b ... ok
[INFO] [stdout] test rescore::aligner::tests::empty_band_with_unreachable_geometry_returns_inf_sentinel ... ok
[INFO] [stdout] test rescore::aligner::tests::exact_match_is_zero ... ok
[INFO] [stdout] test rescore::aligner::tests::high_gap_cost_forces_mismatch_path ... ok
[INFO] [stdout] test rescore::aligner::tests::identity_basic ... ok
[INFO] [stdout] test rescore::aligner::tests::j_end_is_inside_band_window ... ok
[INFO] [stdout] test rescore::aligner::tests::gap_cost_scales_weighted_distance ... ok
[INFO] [stdout] test rescore::aligner::tests::j_end_on_exact_match_equals_m_plus_offset_max ... ok
[INFO] [stdout] test rescore::aligner::tests::j_end_recovers_shift_when_b_is_shifted ... ok
[INFO] [stdout] test rescore::aligner::tests::matches_reference_when_truth_fits_in_band ... ok
[INFO] [stdout] test rescore::aligner::tests::mismatch_cost_scales_weighted_distance ... ok
[INFO] [stdout] test rescore::aligner::tests::n_matches_nothing ... ok
[INFO] [stdout] test rescore::aligner::tests::one_deletion_in_a_vs_b ... ok
[INFO] [stdout] test detect::irregularity::tests::varying_blocks_yield_higher_irregularity ... ok
[INFO] [stdout] test rescore::aligner::tests::one_mismatch ... ok
[INFO] [stdout] test monomer_model::tests::probe_period_high_homology_on_pure_tandem ... ok
[INFO] [stdout] test rescore::aligner::tests::one_insertion_in_b ... ok
[INFO] [stdout] test rescore::aligner::tests::substring_of_b_is_free_match ... ok
[INFO] [stdout] test rescore::aligner::tests::scratch_reuse_matches_fresh_scratch ... ok
[INFO] [stdout] test rescore::io::tests::missing_column_errors ... ok
[INFO] [stdout] test rescore::io::tests::parses_kite_header ... ok
[INFO] [stdout] test rescore::kmer_scan::tests::autocorr_high_for_periodic_density ... ok
[INFO] [stdout] test rescore::kmer_scan::tests::autocorr_low_for_uniform_signal ... ok
[INFO] [stdout] test rescore::kmer_scan::tests::autocorr_returns_none_when_founder_unknown ... ok
[INFO] [stdout] test rescore::kmer_scan::tests::encode_skips_n_bases ... ok
[INFO] [stdout] test rescore::kmer_scan::tests::phase_fold_high_for_nested_subrepeat ... ok
[INFO] [stdout] test rescore::kmer_scan::tests::phase_fold_low_for_uniform_tandem ... ok
[INFO] [stdout] test rescore::kmer_scan::tests::phase_fold_returns_none_when_founder_unknown ... ok
[INFO] [stdout] test rescore::pass1::tests::bimodal_hor_scan_relaxed_gate_fires ... ok
[INFO] [stdout] test rescore::pass1::tests::case_with_only_strongest_and_no_basic_returns_none_method ... ok
[INFO] [stdout] test rescore::pass1::tests::clean_integer_hor_strict_gate_fires ... ok
[INFO] [stdout] test rescore::pass1::tests::k_out_of_range_rejected ... ok
[INFO] [stdout] test rescore::pass1::tests::method_enum_renders_to_expected_tsv_strings ... ok
[INFO] [stdout] test rescore::pass1::tests::no_strongest_when_no_row_clears_id_min ... ok
[INFO] [stdout] test rescore::io::tests::load_peaks_roundtrip ... ok
[INFO] [stdout] test rescore::pass1::tests::phantom_rows_excluded_from_both_strongest_and_candidate ... ok
[INFO] [stdout] test rescore::pass1::tests::scan_relaxed_admitted_only_when_strict_fails ... ok
[INFO] [stdout] test rescore::pass1::tests::smallest_qualifying_basic_monomer_wins ... ok
[INFO] [stdout] test rescore::pass1::tests::strict_outranks_scan_relaxed_at_same_period ... ok
[INFO] [stdout] test rescore::sample::tests::all_n_array_returns_empty_after_retries ... ok
[INFO] [stdout] test rescore::sample::tests::array_exactly_span_yields_one_anchor ... ok
[INFO] [stdout] test rescore::sample::tests::array_too_short_returns_empty ... ok
[INFO] [stdout] test rescore::sample::tests::derive_seed_is_deterministic_and_diverges ... ok
[INFO] [stdout] test rescore::sample::tests::determinism_same_seed_same_pairs ... ok
[INFO] [stdout] test rescore::sample::tests::different_case_ids_diverge ... ok
[INFO] [stdout] test rescore::sample::tests::n_heavy_pairs_are_rejected_and_retried ... ok
[INFO] [stdout] test rescore::sample::tests::pairs_stay_within_bounds ... ok
[INFO] [stdout] test rescore::sample::tests::slop_exceeds_period_returns_empty ... ok
[INFO] [stdout] test rescore::scan::tests::scan_at_long_period_reports_full_occupancy_on_perfect_tandem ... ok
[INFO] [stdout] test rescore::pass1::tests::strongest_is_argmax_not_lowest_rank ... ok
[INFO] [stdout] test rescore::scan::tests::scan_localised_subrepeat_reports_high_scan_identity ... ok
[INFO] [stdout] test rescore::aligner::tests::matches_reference_when_band_is_generous ... ok
[INFO] [stdout] test rescore::scan::tests::scan_partial_occupancy_on_mixed_tandem_and_noise ... ok
[INFO] [stdout] test rescore::aligner::tests::parallel_workers_get_same_results_as_sequential ... ok
[INFO] [stdout] test rescore::scan::tests::scan_perfect_tandem_returns_full_occupancy ... ok
[INFO] [stdout] test rescore::scan::tests::scan_short_array_returns_none ... ok
[INFO] [stdout] test rescore::scan::tests::scan_no_qualifying_strides_reports_na_identity ... ok
[INFO] [stdout] test rescore::scan::tests::scan_period_zero_returns_none ... ok
[INFO] [stdout] test rescore::scan::tests::stride_geometry_matches_spec ... ok
[INFO] [stdout] test rescore::scan::tests::scan_with_periodic_indels_fires_under_drift ... ok
[INFO] [stdout] test rescore::tests::aggregate_shifts_concentrated_zero_does_not_flag ... ok
[INFO] [stdout] test rescore::tests::aggregate_shifts_excludes_low_identity_pairs ... ok
[INFO] [stdout] test rescore::tests::aggregate_shifts_concentrated_nonzero_flags_phantom ... ok
[INFO] [stdout] test rescore::tests::aggregate_shifts_scattered_does_not_flag ... ok
[INFO] [stdout] test rescore::tests::founder_gate_fills_founder_period_on_every_row ... ok
[INFO] [stdout] test rescore::tests::founder_gate_ignores_phantom_when_picking_founder ... ok
[INFO] [stdout] test rescore::tests::aggregate_shifts_relative_tol_does_not_flag_large_period ... ok
[INFO] [stdout] test rescore::tests::founder_gate_leaves_founder_period_none_when_no_qualifying_founder ... ok
[INFO] [stdout] test rescore::tests::founder_gate_overrides_near_founder_candidate ... ok
[INFO] [stdout] test rescore::tests::founder_gate_overrides_when_period_exceeds_founder ... ok
[INFO] [stdout] test rescore::tests::founder_gate_ratio_boundary_inclusive ... ok
[INFO] [stdout] test rescore::tests::founder_gate_skips_when_no_qualifying_founder ... ok
[INFO] [stdout] test rescore::tests::founder_gate_uses_lowest_qualifying_rank_not_earliest_iter ... ok
[INFO] [stdout] test rescore::tests::founder_gate_keeps_short_subrepeat ... ok
[INFO] [stdout] test rescore::tests::na_row_formats_as_na ... ok
[INFO] [stdout] test rescore::aligner::tests::band_never_underreports ... ok
[INFO] [stdout] test rescore::tests::quantile_basic ... ok
[INFO] [stdout] test rescore::tests::rescore_one_short_array_is_na ... ok
[INFO] [stdout] test rescore::tests::resolved_band_long_period_scales_with_period ... ok
[INFO] [stdout] test rescore::tests::resolved_band_short_period_uses_slop_floor ... ok
[INFO] [stdout] test rescore::tests::resolved_band_user_override_bypasses_formula ... ok
[INFO] [stdout] test rescore::tests::resolved_band_wider_slop_dominates ... ok
[INFO] [stdout] test rescore::tests::spatial_contrast_clustered_hits_yield_high_contrast ... ok
[INFO] [stdout] test rescore::tests::spatial_contrast_returns_none_when_array_too_short ... ok
[INFO] [stdout] test rescore::tests::spatial_contrast_returns_none_when_too_few_bins_qualify ... ok
[INFO] [stdout] test rescore::tests::spatial_contrast_uniform_hits_yield_low_contrast ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_classic_bimodal_fires ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_high_iqr_low_p75_does_not_fire ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_low_spatial_contrast_does_not_fire ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_na_spatial_contrast_yields_na ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_noise_does_not_fire ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_phantom_blocks_subrepeat ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_phantom_unknown_does_not_block ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_real_period_does_not_fire ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_too_high_coverage_does_not_fire ... ok
[INFO] [stdout] test rescore::tests::subrepeat_flag_too_low_coverage_does_not_fire ... ok
[INFO] [stdout] test rule_classify::cluster::tests::empty_input_yields_no_clusters ... ok
[INFO] [stdout] test rule_classify::cluster::tests::far_peaks_split ... ok
[INFO] [stdout] test rule_classify::cluster::tests::near_peaks_merge_into_one_cluster ... ok
[INFO] [stdout] test rule_classify::cluster::tests::single_peak_one_cluster ... ok
[INFO] [stdout] test rule_classify::cluster::tests::zero_weight_falls_back_to_mean ... ok
[INFO] [stdout] test rule_classify::decide::tests::clean_k3_hor_tile_dominant ... ok
[INFO] [stdout] test rule_classify::decide::tests::hor_with_few_tiles_demoted_to_unresolved ... ok
[INFO] [stdout] test rule_classify::decide::tests::lone_significant_falls_through_to_simple_tr ... ok
[INFO] [stdout] test rule_classify::decide::tests::min_tile_copies_zero_disables_gate ... ok
[INFO] [stdout] test rule_classify::decide::tests::monotonic_decay_is_simple_tr ... ok
[INFO] [stdout] test rule_classify::decide::tests::multiplicity_match_round_and_tolerance ... ok
[INFO] [stdout] test rule_classify::decide::tests::no_clusters_is_no_signal_verdict ... ok
[INFO] [stdout] test rule_classify::io::tests::fmt_g_basics ... ok
[INFO] [stdout] test rule_classify::io::tests::fmt_g_negatives ... ok
[INFO] [stdout] test rule_classify::io::tests::fmt_g_precision_4 ... ok
[INFO] [stdout] test rule_classify::io::tests::fmt_g_special ... ok
[INFO] [stdout] test sequence::tests::empty_record_is_zero_n_fraction ... ok
[INFO] [stdout] test sequence::tests::normalize_basics ... ok
[INFO] [stdout] test sequence::tests::record_normalizes_and_counts_ns ... ok
[INFO] [stdout] test sequence::tests::rna_u_becomes_t ... ok
[INFO] [stdout] test rescore::tests::rescore_one_perfect_repeat_is_high_identity ... ok
[INFO] [stdout] test rescore::scan::tests::scan_with_noise_still_fires_at_threshold ... ok
[INFO] [stdout] test report::tests::synthetic_tandem_pure_has_dominant_peak ... ok
[INFO] [stdout] test rescore::scan::tests::scan_no_tandem_returns_low_occupancy ... ok
[INFO] [stdout] test simulate::tests::simulate_basic_tandem_repeat ... ok
[INFO] [stdout] test simulate::tests::simulate_block_conversion_strengthens_signal ... ok
[INFO] [stdout] test kite::tests::finds_clean_monomer_period ... ok
[INFO] [stdout] test simulate::tests::simulate_rejects_bad_submono_divisor ... ok
[INFO] [stdout] test simulate::tests::simulate_indel_changes_lengths ... ok
[INFO] [stdout] test simulate_grid::tests::alternatives_for_horsubmono ... ok
[INFO] [stdout] test simulate_grid::tests::alternatives_for_nullsubmono ... ok
[INFO] [stdout] test simulate_grid::tests::alternatives_primary_only_for_submono_k_1 ... ok
[INFO] [stdout] test simulate_grid::tests::derive_seed_is_deterministic_and_different_across_cases ... ok
[INFO] [stdout] test simulate::tests::simulate_inter_divergence_applies_per_copy ... ok
[INFO] [stdout] test ssr::consensus::tests::pure_gt_one_motif ... ok
[INFO] [stdout] test ssr::find_ssrs::tests::drop_multi_motifs ... ok
[INFO] [stdout] test ssr::find_ssrs::tests::find_ssrs_basic_at_dinuc ... ok
[INFO] [stdout] test ssr::find_ssrs::tests::find_ssrs_homopolymer_only_emits_when_alone ... ok
[INFO] [stdout] test ssr::consensus::tests::build_dimer_extends_to_min ... ok
[INFO] [stdout] test ssr::find_ssrs::tests::homopolymer_detection ... ok
[INFO] [stdout] test ssr::find_ssrs::tests::normalize_motif_examples ... ok
[INFO] [stdout] test ssr::find_ssrs::tests::rc_basic ... ok
[INFO] [stdout] test summary::tests::ambiguous_falls_through ... ok
[INFO] [stdout] test summary::tests::has_ssr_threshold_inclusive ... ok
[INFO] [stdout] test summary::tests::hor_with_ssr_below_pure_threshold ... ok
[INFO] [stdout] test summary::tests::just_below_has_ssr_threshold ... ok
[INFO] [stdout] test summary::tests::confirms_host_falls_through_to_hor ... ok
[INFO] [stdout] test summary::tests::plain_tr ... ok
[INFO] [stdout] test summary::tests::plain_hor ... ok
[INFO] [stdout] test summary::tests::pure_ssr_fires_above_threshold ... ok
[INFO] [stdout] test summary::tests::pure_ssr_not_triggered_by_consensus_inflated_dom_cov ... ok
[INFO] [stdout] test summary::tests::pure_ssr_outranks_subrepeat ... ok
[INFO] [stdout] test summary::tests::pure_ssr_threshold_inclusive ... ok
[INFO] [stdout] test summary::tests::skip_k2_falls_through_to_hor ... ok
[INFO] [stdout] test summary::tests::subrepeat_at_threshold_fires ... ok
[INFO] [stdout] test summary::tests::subrepeat_below_density_falls_to_tr ... ok
[INFO] [stdout] test summary::tests::subrepeat_below_density_with_ssr_falls_to_tr_with_ssr ... ok
[INFO] [stdout] test summary::tests::subrepeat_with_ssr_above_density ... ok
[INFO] [stdout] test summary::tests::subrepeat_without_ssr_above_density ... ok
[INFO] [stdout] test summary::tests::tr_with_ssr ... ok
[INFO] [stdout] test summary::tests::unresolved_default ... ok
[INFO] [stdout] test summary::tests::subrepeat_missing_density_does_not_fire ... ok
[INFO] [stdout] test summary::tests::unresolved_with_ssr ... ok
[INFO] [stdout] test synth::blocks::tests::coord_map_lookup_matches_realised_positions ... ok
[INFO] [stdout] test synth::blocks::tests::hor_block_emits_n_copies_times_k_bases ... ok
[INFO] [stdout] test synth::blocks::tests::hor_block_with_k1_template_rejected ... ok
[INFO] [stdout] test synth::blocks::tests::insertion_gc_skew_in_range ... ok
[INFO] [stdout] test synth::blocks::tests::negative_shift_truncates_preceding_block ... ok
[INFO] [stdout] test synth::blocks::tests::positive_shift_appends_bytes_with_no_coord_entry ... ok
[INFO] [stdout] test synth::blocks::tests::same_template_referenced_twice_shares_slots ... ok
[INFO] [stdout] test synth::blocks::tests::insertion_block_appends_bytes_with_no_coord_entry ... ok
[INFO] [stdout] test synth::blocks::tests::two_hor_blocks_concatenate ... ok
[INFO] [stdout] test synth::blocks::tests::simple_tr_block_emits_n_copies_times_monomer_len ... ok
[INFO] [stdout] test simulate::tests::simulate_submono_tiles_internally ... ok
[INFO] [stdout] test simulate::tests::simulate_monomer_conversion_degrades_hor_signal ... ok
[INFO] [stdout] test simulate::tests::simulate_hor_intra_makes_distinct_founders ... ok
[INFO] [stdout] test kite::tests::rejects_random_sequence ... ok
[INFO] [stdout] test synth::config::tests::hor_with_monomer_template_rejected ... ok
[INFO] [stdout] test synth::config::tests::hybrid_slot_oor_rejected ... ok
[INFO] [stdout] test synth::config::tests::event_targeting_shift_rejected ... ok
[INFO] [stdout] test synth::config::tests::event_block_oor_rejected ... ok
[INFO] [stdout] test synth::config::tests::event_copy_range_oor_rejected ... ok
[INFO] [stdout] test synth::config::tests::inline_sequence_correct_length_accepted ... ok
[INFO] [stdout] test synth::config::tests::json_schema_rejects_mutation_rate_above_1 ... ok
[INFO] [stdout] test synth::config::tests::json_schema_rejects_k_below_2 ... ok
[INFO] [stdout] test synth::config::tests::inline_sequence_wrong_length_rejected ... ok
[INFO] [stdout] test synth::config::tests::json_schema_rejects_inline_sequence_with_non_acgt ... ok
[INFO] [stdout] test synth::config::tests::minimal_hor_validates ... ok
[INFO] [stdout] test synth::config::tests::json_schema_rejects_empty_structure ... ok
[INFO] [stdout] test synth::config::tests::negative_shift_no_preceding_block_rejected ... ok
[INFO] [stdout] test synth::config::tests::unknown_field_rejected ... ok
[INFO] [stdout] test synth::config::tests::source_file_rejected_with_mvp_message ... ok
[INFO] [stdout] test synth::config::tests::negative_shift_within_bound_ok ... ok
[INFO] [stdout] test synth::coords::tests::apply_indels_at_start_boundary ... ok
[INFO] [stdout] test synth::coords::tests::apply_indels_at_end_boundary ... ok
[INFO] [stdout] test synth::coords::tests::apply_indels_deletion_before_shifts_left ... ok
[INFO] [stdout] test synth::coords::tests::apply_indels_deletion_inside_shrinks ... ok
[INFO] [stdout] test synth::coords::tests::apply_indels_insertion_before_shifts ... ok
[INFO] [stdout] test synth::coords::tests::apply_indels_insertion_inside_extends ... ok
[INFO] [stdout] test synth::coords::tests::apply_indels_mixed_multiple_entries ... ok
[INFO] [stdout] test synth::coords::tests::apply_indels_tile_stays_contiguous ... ok
[INFO] [stdout] test synth::coords::tests::apply_indels_insertion_after_unaffected ... ok
[INFO] [stdout] test synth::config::tests::schema_version_must_be_1 ... ok
[INFO] [stdout] test synth::coords::tests::end_bp_is_start_plus_len ... ok
[INFO] [stdout] test synth::config::tests::negative_shift_too_large_rejected ... ok
[INFO] [stdout] test synth::coords::tests::range_filters_and_sorts ... ok
[INFO] [stdout] test synth::coords::tests::shift_after_leaves_entries_before_pos_untouched ... ok
[INFO] [stdout] test synth::coords::tests::find_returns_matching_entry ... ok
[INFO] [stdout] test synth::coords::tests::shift_after_does_not_extend_right_entry ... ok
[INFO] [stdout] test synth::events::tests::empty_events_json_is_bracket_pair ... ok
[INFO] [stdout] test synth::events::tests::duplication_downstream_entries_shift_not_extend ... ok
[INFO] [stdout] test synth::events::tests::duplication_extends_sequence_by_range_len ... ok
[INFO] [stdout] test synth::events::tests::events_json_round_trip ... ok
[INFO] [stdout] test synth::events::tests::event_chain_dup_then_inv_then_del_keeps_coords_consistent ... ok
[INFO] [stdout] test synth::config::tests::unknown_template_rejected ... ok
[INFO] [stdout] test synth::events::tests::rc_aaaa_to_tttt ... ok
[INFO] [stdout] test synth::events::tests::rc_palindrome ... ok
[INFO] [stdout] test synth::fasta::tests::writes_record_and_wraps_at_80 ... ok
[INFO] [stdout] test synth::events::tests::inversion_actually_reverse_complements_bytes ... ok
[INFO] [stdout] test synth::events::tests::hybrid_replaces_slot_bytes ... ok
[INFO] [stdout] test synth::events::tests::deletion_shrinks_sequence_by_range_len ... ok
[INFO] [stdout] test synth::config::tests::insertion_kinds_parse ... ok
[INFO] [stdout] test synth::events::tests::inversion_preserves_length ... ok
[INFO] [stdout] test synth::grammar::tests::hor_with_retro_insertion ... ok
[INFO] [stdout] test synth::grammar::tests::single_hor ... ok
[INFO] [stdout] test synth::grammar::tests::simple_tr ... ok
[INFO] [stdout] test synth::grammar::tests::phase_shifted_hor ... ok
[INFO] [stdout] test synth::grammar::tests::zero_divergence_omitted ... ok
[INFO] [stdout] test synth::noise::tests::mutations_use_only_other_three_bases ... ok
[INFO] [stdout] test synth::noise::tests::zero_rates_no_op ... ok
[INFO] [stdout] test synth::periods::tests::coexisting_periods_both_listed ... ok
[INFO] [stdout] test synth::periods::tests::hor_emits_base_and_unit ... ok
[INFO] [stdout] test synth::noise::tests::deterministic_same_seed ... ok
[INFO] [stdout] test synth::rng::tests::derive_is_deterministic ... ok
[INFO] [stdout] test synth::rng::tests::different_names_diverge ... ok
[INFO] [stdout] test synth::rng::tests::different_top_seeds_diverge ... ok
[INFO] [stdout] test synth::rng::tests::streams_isolate_stages ... ok
[INFO] [stdout] test synth::rng::tests::streams_replay_each_stage ... ok
[INFO] [stdout] test synth::periods::tests::simple_tr_emits_no_hor_unit ... ok
[INFO] [stdout] test synth::templates::tests::deterministic_same_seed ... ok
[INFO] [stdout] test synth::templates::tests::gc_content_within_tolerance ... ok
[INFO] [stdout] test synth::templates::tests::different_seed_differs ... ok
[INFO] [stdout] test synth::templates::tests::monomer_template_has_k1 ... ok
[INFO] [stdout] test synth::templates::tests::instantiate_caches_by_name_deterministically ... ok
[INFO] [stdout] test synth::templates::tests::realised_divergence_in_band ... ok
[INFO] [stdout] test synth::templates::tests::sequence_source_used_verbatim ... ok
[INFO] [stdout] test synth::templates::tests::slot1_length_correct ... ok
[INFO] [stdout] test synth::templates::tests::zero_divergence_collapses_to_identical_slots ... ok
[INFO] [stdout] test synth::truth::tests::hor_with_zero_divergence_is_simple_tr ... ok
[INFO] [stdout] test synth::noise::tests::noise_updates_filler_spans ... ok
[INFO] [stdout] test simulate::tests::simulate_is_deterministic_for_fixed_seed ... ok
[INFO] [stdout] test synth::truth::tests::mixed_blocks_classified_as_mixed ... ok
[INFO] [stdout] test synth::truth::tests::phase_shifted_hor_is_hor_with_one_shift ... ok
[INFO] [stdout] test synth::templates::tests::realised_divergence_approaches_d_for_large_k ... ok
[INFO] [stdout] test synth::truth::tests::tsv_row_roundtrips ... ok
[INFO] [stdout] test synth::truth::tests::single_hor_classification ... ok
[INFO] [stdout] test synth::truth::tests::simple_tr_classification ... ok
[INFO] [stdout] test synth::wobble::tests::coord_map_remains_consistent_after_wobble ... ok
[INFO] [stdout] test synth::wobble::tests::requires_repeat_block_for_row_size ... ok
[INFO] [stdout] test synth::wobble::tests::random_walk_periodicity_is_none ... ok
[INFO] [stdout] test synth::wobble::tests::determinism_same_seed ... ok
[INFO] [stdout] test synth::wobble::tests::sinusoidal_periodicity_in_bp ... ok
[INFO] [stdout] test tandem_validate::scan::tests::applies_rel_score_floor ... ok
[INFO] [stdout] test tandem_validate::scan::tests::bin_index_clamps ... ok
[INFO] [stdout] test tandem_validate::scan::tests::excludes_hor_ladder_harmonics ... ok
[INFO] [stdout] test tandem_validate::scan::tests::is_present_founder_loose ... ok
[INFO] [stdout] test tandem_validate::scan::tests::is_present_other_strict ... ok
[INFO] [stdout] test synth::wobble::tests::zero_amplitude_is_noop ... ok
[INFO] [stdout] test tandem_validate::scan::tests::no_host_when_peaks_empty_and_unresolved ... ok
[INFO] [stdout] test tandem_validate::scan::tests::pick_host_period_hor_uses_tile ... ok
[INFO] [stdout] test tandem_validate::scan::tests::pick_host_period_simple_tr_without_founder_falls_back_to_kite ... ok
[INFO] [stdout] test tandem_validate::scan::tests::pick_host_period_unresolved_falls_back_to_kite_top ... ok
[INFO] [stdout] test tandem_validate::scan::tests::picks_founder_for_clean_hor_k3 ... ok
[INFO] [stdout] test tandem_validate::scan::tests::pick_host_period_simple_tr_uses_founder ... ok
[INFO] [stdout] test tandem_validate::scan::tests::plan_windows_caps_at_host ... ok
[INFO] [stdout] test tandem_validate::scan::tests::picks_no_candidates_for_clean_tandem ... ok
[INFO] [stdout] test tandem_validate::scan::tests::plan_windows_flush_tail ... ok
[INFO] [stdout] test tandem_validate::scan::tests::plan_windows_min_window_floor ... ok
[INFO] [stdout] test tandem_validate::scan::tests::respects_cand_max ... ok
[INFO] [stdout] test tandem_validate::scan::tests::skip_k2_for_hor_k2 ... ok
[INFO] [stdout] test synth::noise::tests::coord_map_lengths_consistent_after_noise ... ok
[INFO] [stdout] test synth::wobble::tests::sinusoidal_realised_amplitude_close_to_target ... ok
[INFO] [stdout] test synth::noise::tests::mutation_rate_within_tolerance ... ok
[INFO] [stdout] test synth::noise::tests::indel_rate_within_tolerance ... ok
[INFO] [stdout] test synth::wobble::tests::random_walk_realised_amplitude_close_to_target ... ok
[INFO] [stdout] test rescore::tests::long_monomer_with_internal_indels_recovers_with_auto_band ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 442 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 9.46s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/kitehor-6f308fe6e4aecdd7)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/analyze_ci_corpus.rs (/opt/rustwide/target/debug/deps/analyze_ci_corpus-f3d298f661edd02b)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test analyze_ci_corpus_matches_manifest ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 59.23s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/analyze_smoke.rs (/opt/rustwide/target/debug/deps/analyze_smoke-110b1bf8148b24a5)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]      Running tests/detect_kite_emit.rs (/opt/rustwide/target/debug/deps/detect_kite_emit-16026ee06253ad94)
[INFO] [stdout] test analyze_emits_all_per_stage_tsvs ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]      Running tests/detect_m0.rs (/opt/rustwide/target/debug/deps/detect_m0-1eb6f02e83261ad8)
[INFO] [stdout] test kite_emit_periods_then_detect_succeeds ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 24.38s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test detect_expectations_oracle_well_formed ... ok
[INFO] [stdout] test detect_fails_clearly_on_missing_periods_file ... ok
[INFO] [stdout] test detect_batch_pairs_by_stem ... ok
[INFO] [stdout] test detect_writes_header_only_segments_for_single_array ... ok
[INFO] [stderr]      Running tests/detect_m1.rs (/opt/rustwide/target/debug/deps/detect_m1-30e757c945825d85)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.43s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test unsupported_widths_emit_na ... ok
[INFO] [stderr]      Running tests/detect_m2.rs (/opt/rustwide/target/debug/deps/detect_m2-6eceb3fae6b37ffe)
[INFO] [stdout] test simple_tr_has_high_ic_at_true_width ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 14.89s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test simple_tr_best_lag_score_close_to_r1 ... ok
[INFO] [stdout] test clean_hor_k12_best_lag_is_12_at_base_width has been running for over 60 seconds
[INFO] [stdout] test clean_hor_k12_best_lag_is_12_at_base_width ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 61.91s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/detect_m3.rs (/opt/rustwide/target/debug/deps/detect_m3-3b59feb4178cf517)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test simple_tr_has_low_wobble_at_true_width ... ok
[INFO] [stdout] test clean_hor_has_strong_vertical_edge_rate_at_base_width has been running for over 60 seconds
[INFO] [stdout] test phase_shift_fixture_reports_at_least_one_breakpoint has been running for over 60 seconds
[INFO] [stdout] test phase_shift_fixture_reports_at_least_one_breakpoint ... ok
[INFO] [stdout] test clean_hor_has_strong_vertical_edge_rate_at_base_width ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 103.49s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/detect_m3_5.rs (/opt/rustwide/target/debug/deps/detect_m3_5-9bf21957c59ed357)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test no_shift_yields_empty_phase_shift_lists has been running for over 60 seconds
[INFO] [stdout] test t10_phase_shift_offset_within_tolerance has been running for over 60 seconds
[INFO] [stdout] test t10_phase_shift_offset_within_tolerance ... ok
[INFO] [stdout] test no_shift_yields_empty_phase_shift_lists ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running tests/detect_m4.rs (/opt/rustwide/target/debug/deps/detect_m4-7352be2085f8cc71)
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 89.98s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test core_t17_random_negative ... ok
[INFO] [stdout] test core_t01_simple_tr has been running for over 60 seconds
[INFO] [stdout] test core_t05_hor_clean has been running for over 60 seconds
[INFO] [stdout] test core_t06_regime_a has been running for over 60 seconds
[INFO] [stdout] test core_t07_regime_c has been running for over 60 seconds
[INFO] [stdout] test core_t10_phase_shift has been running for over 60 seconds
[INFO] [stdout] test core_t13_coexisting_periods has been running for over 60 seconds
[INFO] [stdout] test core_t18_at_rich has been running for over 60 seconds
[INFO] [stdout] test core_t07_regime_c ... ok
[INFO] [stdout] test core_t06_regime_a ... ok
[INFO] [stdout] test core_t01_simple_tr ... ok
[INFO] [stdout] test core_t18_at_rich ... ok
[INFO] [stdout] test core_t10_phase_shift ... ok
[INFO] [stdout] test core_t05_hor_clean ... ok
[INFO] [stdout] test core_t13_coexisting_periods ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 267.37s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/detect_m5.rs (/opt/rustwide/target/debug/deps/detect_m5-aa40d043a7a97020)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test export_raster_emits_tsv_and_png ... ok
[INFO] [stdout] test viz_dir_emits_per_array_tsvs ... ok
[INFO] [stdout] test consensus_fasta_emitted_for_simple_tr_without_hor_unit ... ok
[INFO] [stdout] test consensus_fasta_emitted_for_hor has been running for over 60 seconds
[INFO] [stderr]      Running tests/detect_m7_2_mixed_override.rs (/opt/rustwide/target/debug/deps/detect_m7_2_mixed_override-d994cd33f0b2f77d)
[INFO] [stdout] test consensus_fasta_emitted_for_hor ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 67.87s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test diagnostics_json_schema_version_is_2 has been running for over 60 seconds
[INFO] [stdout] test mixed_array_emits_per_segment_monomers_to_consensus_fa has been running for over 60 seconds
[INFO] [stdout] test segments_tsv_has_m7_2_columns has been running for over 60 seconds
[INFO] [stdout] test t03_wobble_aperiodic_stays_simple_tr has been running for over 60 seconds
[INFO] [stdout] test t05_clean_hor_stays_hor has been running for over 60 seconds
[INFO] [stdout] test t10_phase_shift_stays_hor has been running for over 60 seconds
[INFO] [stdout] test t15_stratification_stays_simple_tr has been running for over 60 seconds
[INFO] [stdout] test t20_same_width_mixed_hor_fires_override has been running for over 60 seconds
[ERROR] error running command: command timed out after 900 seconds
[INFO] running `Command { std: "docker" "inspect" "b3b611d4792dc98beacdb75f65c5370c1349e634a5f38f0058da39d494874ace", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b3b611d4792dc98beacdb75f65c5370c1349e634a5f38f0058da39d494874ace", kill_on_drop: false }`
[INFO] [stdout] b3b611d4792dc98beacdb75f65c5370c1349e634a5f38f0058da39d494874ace
